export interface BaseProps {
  id: string;
  x: number;
  y: number;
  width: number;
  height: number;
  bgColor: string;
}

export interface FillRectangleProps extends BaseProps {
  text: string;
  maxWidth: number;
  lineHeight: number;
  fontColor: string;
  font: string;
  textBaseline:
    | "alphabetic"
    | "bottom"
    | "hanging"
    | "ideographic"
    | "middle"
    | "top";
  paddingTop: number;
  paddingLeft: number;
}
export interface MapIF<K, V> {
  clear(): void;

  delete(key: K): boolean;

  entries(): IterableIterator<[K, V]>;

  forEach(
    callbackfn: (value: V, index: K, map: Map<K, V>) => void,
    thisArg?: any
  ): void;

  get(key: K): V;

  has(key: K): boolean;

  keys(): IterableIterator<K>;

  set(key: K, value?: V): Map<K, V>;

  size: number;

  values(): IterableIterator<V>;

  [Symbol.iterator](): IterableIterator<[K, V]>;

  [Symbol.toStringTag]: string;
}
